<template>
    <div class="shopcar-container">
        <div class="goods-list">
            <div class="mui-card" v-for="(item,index) in goodslist" :key="item.id">
                <div class="mui-card-content">
                    <div class="mui-card-content-inner">
                        <mt-switch @change="selectedChanged(item.id,$store.getters.getGoodsSelected[item.id])" v-model="$store.getters.getGoodsSelected[item.id]"></mt-switch>
                        <img :src="item.thumb_path" alt="">
                        <div class="info">
                            <h1>{{item.title}}</h1>
                            <p>
                                <span class="price">￥{{item.sell_price}}</span>
                                <numbox :initcount="$store.getters.getGoodsCount[item.id]" :goodsid="item.id"></numbox>
                                <a href="javascript:void(0);" @click.prevent="remove(item.id ,index)">删除</a>
                            </p>
                        </div>
                    </div>
                </div>
            </div>
        </div>
        <div class="mui-card">
            <div class="mui-card-content">
                <div class="mui-card-content-inner jiesuan">
                    <div class="left">
                        <p>
                            总计(不计运费)
                        </p>
                        <p>
                            已勾选商品 <span class="red">{{$store.getters.getGoodsCountAndAmount.count}}</span> 件 ，总价： <span class="red">￥{{$store.getters.getGoodsCountAndAmount.amount}}</span> 元
                        </p>
                    </div>
                    <mt-button type="danger">去结算</mt-button>
                </div>
            </div>
        </div>
        <p>
            {{}}
        </p>
    </div>
</template>
<script>
    import numbox from "../subcomponents/shopcar_numbox.vue"
    export default {
        data(){
            return {
                goodslist: []
            }
        },
        created(){
            this.getGoodsList();
        },
        methods: {
            getGoodsList(){
                var idArr = [];
                this.$store.state.car.forEach(item => idArr.push(item.id));
                //如果购物车中没有商品，则直接返回
                if(idArr.length <= 0){
                    return ;
                }
                this.$http.get("shopcarlist/shopcarlist.json").then(result => {
                    if(result.body.status === 0){
                        this.goodslist = result.body.message;
                    }
                })
            },
            remove(id,index){
            //    点击删除，将商品从store中根据id删除，同时，把当前组件中的goodslist中，对应的那个商品，使用index删除
                this.goodslist.splice(index, 1);
                this.$store.commit("removeForCar",id);
            },
            selectedChanged(id,val){
            //    每当点击开关，把最新的开关状态，同步到store中
                this.$store.commit("updateGoodsSelected",{id,selected: val});
            }
        },
        components: {
            numbox
        }
    }
</script>
<style lang="less" scoped>
.shopcar-container{
    background-color: #eee;
    overflow: hidden;
    .goods-list{
        .mui-card-content-inner{
            display: flex;
            align-items: center;
            img{
                padding: 0 5px;
                width: 40px;
                height: 40px;
            }
            h1{
                font-size: 13px;
            }
            .info{
                display: flex;
                flex-direction: column;
                justify-content: space-between;
                .price{
                    color: #f00;
                    font-weight: 700;
                }
            }
        }
    }
    .jiesuan{
        display: flex;
        justify-content: space-between;
        align-items: center;
        .red{
            color: #f00;
            font-weight: 700;
            font-size: 16px;
        }
    }
}
</style>